Skip to content

Add Profiles concepts page#9339

Merged
theletterf merged 9 commits into
open-telemetry:mainfrom
christos68k:ck/profiles-concepts
Mar 10, 2026
Merged

Add Profiles concepts page#9339
theletterf merged 9 commits into
open-telemetry:mainfrom
christos68k:ck/profiles-concepts

Conversation

@christos68k

Copy link
Copy Markdown
Member
  • I have read and followed the Contributing docs, especially the "First-time contributing?" section.
  • This PR has content that I did not fully write myself.
  • I have the experience and knowledge necessary to understand, review, and validate all content in this PR.1

Summary

  • Added a Profiles concepts page to set the context and provide a high-level introduction to OpenTelemetry profiling (links to OTel eBPF profiler and specification for more information)
  • Modified concepts index page to link to the Profiles concepts page

I took the Profiles overview from the current Profiles spec README and blended it into this PR. I did that as it doesn't really fit in the spec README and the high-level description it provides is much more suitable for the concepts page. I will subsequently open another PR to update and extend the Profiles spec page.

CC: @theletterf @open-telemetry/profiling-maintainers @open-telemetry/profiling-approvers

Footnotes

  1. Yes, I can answer maintainer questions about the content of this PR, without using AI.

This is a high-level introduction to OpenTelemetry profiles,
setting the context and linking to the OTel eBPF profiling agent
and the specification.
Now points to Profiles concepts page.
@christos68k
christos68k requested a review from a team as a code owner March 5, 2026 13:15
@otelbot-docs otelbot-docs Bot added the missing:docs-approval Co-owning SIG has provided approval, PR needs approval from docs maintainer label Mar 5, 2026
Comment on lines +124 to +126
Additional language-specific profiling integrations that tap into built-in
runtime profiling frameworks (e.g. JFR for Java, pprof for Go) will also become
available as the signal matures.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CC: @jhalliday Feel free to add extra information here.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that's fine for now. I'm maintaining https://docs.google.com/document/d/1hrfElwEdoUQbj-fY0vVVN7kmWmlmn9F_eZzxMuVnVwo/edit?usp=sharing but it's not targeted at end-users. Once the OTel Java SDK has support shipping I'll do user docs for that and update to link from here I think.

Comment on lines +29 to +41
Profiles are emerging as the fourth essential signal of observability, alongside
logs, metrics, and traces. They offer unparalleled insights into system and
application behavior, often uncovering performance bottlenecks overlooked by
other signals.

Profiles provide granular, time-based views of resource consumption and code
execution, encompassing:

- **Application-level profiling**: Reveals how software functions consume CPU,
memory, and other resources, highlighting slow or inefficient code.

- **System-level profiling**: Offers a holistic view of the infrastructure,
pinpointing issues in operating system calls, kernel operations, and I/O.

@christos68k christos68k Mar 5, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took this from the existing Profiles spec page as I think it provides better value here. I'll subsequently open a spec PR to update the Profiles spec pages.

@christos68k christos68k mentioned this pull request Mar 5, 2026
3 tasks
@theletterf theletterf self-assigned this Mar 5, 2026

@theletterf theletterf left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good work. Any chance we could show what the profiling payload looks like?

Comment thread content/en/docs/concepts/signals/profiles.md Outdated
Comment thread content/en/docs/concepts/signals/profiles.md Outdated

OpenTelemetry provides an
[eBPF-based profiling agent](https://github.com/open-telemetry/opentelemetry-ebpf-profiler)
for Linux, capable of profiling most languages with zero code changes.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
for Linux, capable of profiling most languages with zero code changes.
for Linux, capable of profiling most languages with zero-code changes.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure about this? zero-code reads strange in this sentence (maybe it's fine if used as an adjective e.g. zero-code instrumentation).

If you prefer, I can reword this to "without any code changes"

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See fa5a813

Comment thread content/en/docs/concepts/signals/profiles.md Outdated
Comment thread content/en/docs/concepts/signals/profiles.md Outdated
@otelbot-docs otelbot-docs Bot added ready-to-be-merged This PR is ready to be merged by a maintainer and removed missing:docs-approval Co-owning SIG has provided approval, PR needs approval from docs maintainer labels Mar 6, 2026
christos68k and others added 3 commits March 6, 2026 15:32
Review feedback

Co-authored-by: Fabrizio Ferri-Benedetti <fabri.ferribenedetti@elastic.co>
Review feedback

Co-authored-by: Fabrizio Ferri-Benedetti <fabri.ferribenedetti@elastic.co>
Review feedback

Co-authored-by: Fabrizio Ferri-Benedetti <fabri.ferribenedetti@elastic.co>
@christos68k

christos68k commented Mar 6, 2026

Copy link
Copy Markdown
Member Author

Good work. Any chance we could show what the profiling payload looks like?

If you mean in terms of protobuf representation, I think it's best if we do this in the Profiles spec (where I'm working on two pages: README and data model that will present the format in detail). Trying to keep the concepts page more high-level, to serve as an introduction to OTel Profiles and give all relevant introductory context.

@svrnm

svrnm commented Mar 9, 2026

Copy link
Copy Markdown
Member

@open-telemetry/profiling-approvers can we get a 👍 from one more profiling approver/maintainer, then this is probably good to go:)

@theletterf

Copy link
Copy Markdown
Member

/fix:format

@theletterf
theletterf enabled auto-merge March 10, 2026 07:50
@otelbot-docs

otelbot-docs Bot commented Mar 10, 2026

Copy link
Copy Markdown
Contributor

fix:format applied successfully in run 22892412317.

@theletterf
theletterf added this pull request to the merge queue Mar 10, 2026
Merged via the queue into open-telemetry:main with commit 274bf95 Mar 10, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-be-merged This PR is ready to be merged by a maintainer sig:profiling

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants